package start.spring.basic.init;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import lombok.extern.slf4j.Slf4j;

/**
 * 
 * ****************************************************************************
 * 初始化网关
 *
 * @author(作者)：xuyongyun	
 * @date(创建日期)：2023年2月17日
 ******************************************************************************
 */
@Slf4j
@RefreshScope
@Component
@EnableScheduling
public class InitGateway {
	
//  @Autowired
//  private CustomRouteDefinitionRepository redisRouteDefinition;
	
	/**
     * 启动初始化方法
     *
     * @throws Exception
     */
    @PostConstruct
    public void initTask() throws Exception {
//    	refreshRoutes();
    }
    
    //如果版本号不相等则获取最新路由信息并更新网关路由
    @Scheduled(cron = "0 0/10 * * * ?")
    public void getDynamicRouteInfo() {
//    	refreshRoutes();
    }
    
    public void refreshRoutes() {
    	log.info("开始更新更新完毕！");
    	try {
    		
    		log.info("路由信息更新完毕！");
        } catch (Exception e) {
        	
        }
    }

    /**
     * 停止销毁方法
     */
    @PreDestroy
    public void destroyTask() {

    }
}
